In [3]:
import os
import glob
import random
import numpy as np
import pandas as pd
import tensorflow_addons as tfa
import tensorflow as tf
import tensorflow.experimental.numpy as tnp
from tensorflow import keras
from keras import layers
from keras.models import Sequential
from keras.layers import Conv2D,MaxPooling2D,Activation, Dropout, Flatten, Dense
from keras.preprocessing.image import ImageDataGenerator

from tqdm import tqdm


from PIL import Image

from tensorflow.keras.utils import to_categorical

import seaborn as sns
import matplotlib.image as img
import matplotlib.pyplot as plt
In [4]:
pip install tensorflow_addons
Defaulting to user installation because normal site-packages is not writeable
Requirement already satisfied: tensorflow_addons in /home/u188267/.local/lib/python3.9/site-packages (0.19.0)
Requirement already satisfied: packaging in /glob/development-tools/versions/oneapi/2023.0.1/oneapi/intelpython/python3.9/lib/python3.9/site-packages (from tensorflow_addons) (21.3)
Requirement already satisfied: typeguard>=2.7 in /home/u188267/.local/lib/python3.9/site-packages (from tensorflow_addons) (3.0.1)
Requirement already satisfied: importlib-metadata>=3.6 in /glob/development-tools/versions/oneapi/2023.0.1/oneapi/intelpython/python3.9/lib/python3.9/site-packages (from typeguard>=2.7->tensorflow_addons) (6.0.0)
Requirement already satisfied: typing-extensions>=4.4.0 in /home/u188267/.local/lib/python3.9/site-packages (from typeguard>=2.7->tensorflow_addons) (4.5.0)
Requirement already satisfied: pyparsing!=3.0.5,>=2.0.2 in /glob/development-tools/versions/oneapi/2023.0.1/oneapi/intelpython/python3.9/lib/python3.9/site-packages (from packaging->tensorflow_addons) (3.0.9)
Requirement already satisfied: zipp>=0.5 in /glob/development-tools/versions/oneapi/2023.0.1/oneapi/intelpython/python3.9/lib/python3.9/site-packages (from importlib-metadata>=3.6->typeguard>=2.7->tensorflow_addons) (3.12.0)
Note: you may need to restart the kernel to use updated packages.
In [6]:
import tensorflow as tf 
os.environ['TF_CPP_MIN_LOG_LEVEL'] = '2'  # set the logging level to ERROR

tf.random.set_seed(3)
from tensorflow.python.keras import backend as K
from tensorflow.keras.layers.experimental.preprocessing import Rescaling
In [7]:
import os
os.environ['TF_ENABLE_ONEDNN_OPTS'] = '1'
os.environ['TF_ENABLE_AUTO_MIXED_PRECISION'] = '1'
In [8]:
pip install importlib_metadata
Defaulting to user installation because normal site-packages is not writeable
Requirement already satisfied: importlib_metadata in /glob/development-tools/versions/oneapi/2023.0.1/oneapi/intelpython/python3.9/lib/python3.9/site-packages (6.0.0)
Requirement already satisfied: zipp>=0.5 in /glob/development-tools/versions/oneapi/2023.0.1/oneapi/intelpython/python3.9/lib/python3.9/site-packages (from importlib_metadata) (3.12.0)
Note: you may need to restart the kernel to use updated packages.
In [9]:
train_csv = pd.read_csv("./Training_set.csv")
test_csv = pd.read_csv("./Testing_set.csv")
In [10]:
train_csv.head()
Out[10]:
filename label
0 Image_1.jpg sitting
1 Image_2.jpg using_laptop
2 Image_3.jpg hugging
3 Image_4.jpg sleeping
4 Image_5.jpg using_laptop
In [11]:
train_fol = glob.glob("./train2/*") 
test_fol = glob.glob("./test/*")
In [12]:
train_csv
Out[12]:
filename label
0 Image_1.jpg sitting
1 Image_2.jpg using_laptop
2 Image_3.jpg hugging
3 Image_4.jpg sleeping
4 Image_5.jpg using_laptop
... ... ...
12595 Image_12596.jpg sitting
12596 Image_12597.jpg clapping
12597 Image_12598.jpg sitting
12598 Image_12599.jpg dancing
12599 Image_12600.jpg listening_to_music

12600 rows × 2 columns

In [13]:
train_csv.label.value_counts()
Out[13]:
sitting               840
using_laptop          840
hugging               840
sleeping              840
drinking              840
clapping              840
dancing               840
cycling               840
calling               840
laughing              840
eating                840
fighting              840
listening_to_music    840
running               840
texting               840
Name: label, dtype: int64
In [14]:
pip install plotly
Defaulting to user installation because normal site-packages is not writeable
Requirement already satisfied: plotly in /home/u188267/.local/lib/python3.9/site-packages (5.13.1)
Requirement already satisfied: tenacity>=6.2.0 in /home/u188267/.local/lib/python3.9/site-packages (from plotly) (8.2.2)
Note: you may need to restart the kernel to use updated packages.
In [15]:
pip install ipykernel
Defaulting to user installation because normal site-packages is not writeable
Requirement already satisfied: ipykernel in /glob/development-tools/versions/oneapi/2023.0.1/oneapi/intelpython/python3.9/lib/python3.9/site-packages (6.21.1)
Requirement already satisfied: comm>=0.1.1 in /glob/development-tools/versions/oneapi/2023.0.1/oneapi/intelpython/python3.9/lib/python3.9/site-packages (from ipykernel) (0.1.2)
Requirement already satisfied: matplotlib-inline>=0.1 in /glob/development-tools/versions/oneapi/2023.0.1/oneapi/intelpython/python3.9/lib/python3.9/site-packages (from ipykernel) (0.1.6)
Requirement already satisfied: traitlets>=5.4.0 in /glob/development-tools/versions/oneapi/2023.0.1/oneapi/intelpython/python3.9/lib/python3.9/site-packages (from ipykernel) (5.9.0)
Requirement already satisfied: pyzmq>=17 in /glob/development-tools/versions/oneapi/2023.0.1/oneapi/intelpython/python3.9/lib/python3.9/site-packages (from ipykernel) (25.0.0)
Requirement already satisfied: jupyter-client>=6.1.12 in /glob/development-tools/versions/oneapi/2023.0.1/oneapi/intelpython/python3.9/lib/python3.9/site-packages (from ipykernel) (8.0.2)
Requirement already satisfied: psutil in /glob/development-tools/versions/oneapi/2023.0.1/oneapi/intelpython/python3.9/lib/python3.9/site-packages (from ipykernel) (5.9.4)
Requirement already satisfied: nest-asyncio in /glob/development-tools/versions/oneapi/2023.0.1/oneapi/intelpython/python3.9/lib/python3.9/site-packages (from ipykernel) (1.5.6)
Requirement already satisfied: jupyter-core!=5.0.*,>=4.12 in /glob/development-tools/versions/oneapi/2023.0.1/oneapi/intelpython/python3.9/lib/python3.9/site-packages (from ipykernel) (5.2.0)
Requirement already satisfied: tornado>=6.1 in /glob/development-tools/versions/oneapi/2023.0.1/oneapi/intelpython/python3.9/lib/python3.9/site-packages (from ipykernel) (6.2)
Requirement already satisfied: debugpy>=1.6.5 in /glob/development-tools/versions/oneapi/2023.0.1/oneapi/intelpython/python3.9/lib/python3.9/site-packages (from ipykernel) (1.6.6)
Requirement already satisfied: packaging in /glob/development-tools/versions/oneapi/2023.0.1/oneapi/intelpython/python3.9/lib/python3.9/site-packages (from ipykernel) (21.3)
Requirement already satisfied: ipython>=7.23.1 in /glob/development-tools/versions/oneapi/2023.0.1/oneapi/intelpython/python3.9/lib/python3.9/site-packages (from ipykernel) (8.9.0)
Requirement already satisfied: pexpect>4.3 in /glob/development-tools/versions/oneapi/2023.0.1/oneapi/intelpython/python3.9/lib/python3.9/site-packages (from ipython>=7.23.1->ipykernel) (4.8.0)
Requirement already satisfied: jedi>=0.16 in /glob/development-tools/versions/oneapi/2023.0.1/oneapi/intelpython/python3.9/lib/python3.9/site-packages (from ipython>=7.23.1->ipykernel) (0.18.2)
Requirement already satisfied: pickleshare in /glob/development-tools/versions/oneapi/2023.0.1/oneapi/intelpython/python3.9/lib/python3.9/site-packages (from ipython>=7.23.1->ipykernel) (0.7.5)
Requirement already satisfied: backcall in /glob/development-tools/versions/oneapi/2023.0.1/oneapi/intelpython/python3.9/lib/python3.9/site-packages (from ipython>=7.23.1->ipykernel) (0.2.0)
Requirement already satisfied: pygments>=2.4.0 in /glob/development-tools/versions/oneapi/2023.0.1/oneapi/intelpython/python3.9/lib/python3.9/site-packages (from ipython>=7.23.1->ipykernel) (2.14.0)
Requirement already satisfied: stack-data in /glob/development-tools/versions/oneapi/2023.0.1/oneapi/intelpython/python3.9/lib/python3.9/site-packages (from ipython>=7.23.1->ipykernel) (0.6.2)
Requirement already satisfied: prompt-toolkit<3.1.0,>=3.0.30 in /glob/development-tools/versions/oneapi/2023.0.1/oneapi/intelpython/python3.9/lib/python3.9/site-packages (from ipython>=7.23.1->ipykernel) (3.0.36)
Requirement already satisfied: decorator in /glob/development-tools/versions/oneapi/2023.0.1/oneapi/intelpython/python3.9/lib/python3.9/site-packages (from ipython>=7.23.1->ipykernel) (5.1.1)
Requirement already satisfied: importlib-metadata>=4.8.3 in /glob/development-tools/versions/oneapi/2023.0.1/oneapi/intelpython/python3.9/lib/python3.9/site-packages (from jupyter-client>=6.1.12->ipykernel) (6.0.0)
Requirement already satisfied: python-dateutil>=2.8.2 in /glob/development-tools/versions/oneapi/2023.0.1/oneapi/intelpython/python3.9/lib/python3.9/site-packages (from jupyter-client>=6.1.12->ipykernel) (2.8.2)
Requirement already satisfied: platformdirs>=2.5 in /glob/development-tools/versions/oneapi/2023.0.1/oneapi/intelpython/python3.9/lib/python3.9/site-packages (from jupyter-core!=5.0.*,>=4.12->ipykernel) (2.6.2)
Requirement already satisfied: pyparsing!=3.0.5,>=2.0.2 in /glob/development-tools/versions/oneapi/2023.0.1/oneapi/intelpython/python3.9/lib/python3.9/site-packages (from packaging->ipykernel) (3.0.9)
Requirement already satisfied: zipp>=0.5 in /glob/development-tools/versions/oneapi/2023.0.1/oneapi/intelpython/python3.9/lib/python3.9/site-packages (from importlib-metadata>=4.8.3->jupyter-client>=6.1.12->ipykernel) (3.12.0)
Requirement already satisfied: parso<0.9.0,>=0.8.0 in /glob/development-tools/versions/oneapi/2023.0.1/oneapi/intelpython/python3.9/lib/python3.9/site-packages (from jedi>=0.16->ipython>=7.23.1->ipykernel) (0.8.3)
Requirement already satisfied: ptyprocess>=0.5 in /glob/development-tools/versions/oneapi/2023.0.1/oneapi/intelpython/python3.9/lib/python3.9/site-packages (from pexpect>4.3->ipython>=7.23.1->ipykernel) (0.7.0)
Requirement already satisfied: wcwidth in /glob/development-tools/versions/oneapi/2023.0.1/oneapi/intelpython/python3.9/lib/python3.9/site-packages (from prompt-toolkit<3.1.0,>=3.0.30->ipython>=7.23.1->ipykernel) (0.2.6)
Requirement already satisfied: six>=1.5 in /glob/development-tools/versions/oneapi/2023.0.1/oneapi/intelpython/python3.9/lib/python3.9/site-packages (from python-dateutil>=2.8.2->jupyter-client>=6.1.12->ipykernel) (1.16.0)
Requirement already satisfied: executing>=1.2.0 in /glob/development-tools/versions/oneapi/2023.0.1/oneapi/intelpython/python3.9/lib/python3.9/site-packages (from stack-data->ipython>=7.23.1->ipykernel) (1.2.0)
Requirement already satisfied: asttokens>=2.1.0 in /glob/development-tools/versions/oneapi/2023.0.1/oneapi/intelpython/python3.9/lib/python3.9/site-packages (from stack-data->ipython>=7.23.1->ipykernel) (2.2.1)
Requirement already satisfied: pure-eval in /glob/development-tools/versions/oneapi/2023.0.1/oneapi/intelpython/python3.9/lib/python3.9/site-packages (from stack-data->ipython>=7.23.1->ipykernel) (0.2.2)
Note: you may need to restart the kernel to use updated packages.
In [16]:
pip install --upgrade nbformat
Defaulting to user installation because normal site-packages is not writeable
Requirement already satisfied: nbformat in /home/u188267/.local/lib/python3.9/site-packages (5.7.3)
Requirement already satisfied: traitlets>=5.1 in /glob/development-tools/versions/oneapi/2023.0.1/oneapi/intelpython/python3.9/lib/python3.9/site-packages (from nbformat) (5.9.0)
Requirement already satisfied: jsonschema>=2.6 in /home/u188267/.local/lib/python3.9/site-packages (from nbformat) (4.17.3)
Requirement already satisfied: fastjsonschema in /home/u188267/.local/lib/python3.9/site-packages (from nbformat) (2.16.3)
Requirement already satisfied: jupyter-core in /glob/development-tools/versions/oneapi/2023.0.1/oneapi/intelpython/python3.9/lib/python3.9/site-packages (from nbformat) (5.2.0)
Requirement already satisfied: attrs>=17.4.0 in /home/u188267/.local/lib/python3.9/site-packages (from jsonschema>=2.6->nbformat) (22.2.0)
Requirement already satisfied: pyrsistent!=0.17.0,!=0.17.1,!=0.17.2,>=0.14.0 in /home/u188267/.local/lib/python3.9/site-packages (from jsonschema>=2.6->nbformat) (0.19.3)
Requirement already satisfied: platformdirs>=2.5 in /glob/development-tools/versions/oneapi/2023.0.1/oneapi/intelpython/python3.9/lib/python3.9/site-packages (from jupyter-core->nbformat) (2.6.2)
Note: you may need to restart the kernel to use updated packages.
In [17]:
import plotly.express as px
l = train_csv.label.value_counts()
fig = px.pie(train_csv, values=l.values, names=l.index, title='Distribution of Human Activity')
fig.show()
plt.show()
In [18]:
filename = train_csv['filename']

situation = train_csv['label']
In [19]:
filename
Out[19]:
0            Image_1.jpg
1            Image_2.jpg
2            Image_3.jpg
3            Image_4.jpg
4            Image_5.jpg
              ...       
12595    Image_12596.jpg
12596    Image_12597.jpg
12597    Image_12598.jpg
12598    Image_12599.jpg
12599    Image_12600.jpg
Name: filename, Length: 12600, dtype: object
In [20]:
situation[105]
Out[20]:
'drinking'
In [21]:
pip install matplotlib
Defaulting to user installation because normal site-packages is not writeable
Requirement already satisfied: matplotlib in /glob/development-tools/versions/oneapi/2023.0.1/oneapi/intelpython/python3.9/lib/python3.9/site-packages (3.6.3)
Requirement already satisfied: packaging>=20.0 in /glob/development-tools/versions/oneapi/2023.0.1/oneapi/intelpython/python3.9/lib/python3.9/site-packages (from matplotlib) (21.3)
Requirement already satisfied: kiwisolver>=1.0.1 in /glob/development-tools/versions/oneapi/2023.0.1/oneapi/intelpython/python3.9/lib/python3.9/site-packages (from matplotlib) (1.4.2)
Requirement already satisfied: pillow>=6.2.0 in /glob/development-tools/versions/oneapi/2023.0.1/oneapi/intelpython/python3.9/lib/python3.9/site-packages (from matplotlib) (9.4.0)
Requirement already satisfied: pyparsing>=2.2.1 in /glob/development-tools/versions/oneapi/2023.0.1/oneapi/intelpython/python3.9/lib/python3.9/site-packages (from matplotlib) (3.0.9)
Requirement already satisfied: python-dateutil>=2.7 in /glob/development-tools/versions/oneapi/2023.0.1/oneapi/intelpython/python3.9/lib/python3.9/site-packages (from matplotlib) (2.8.2)
Requirement already satisfied: numpy>=1.19 in /glob/development-tools/versions/oneapi/2023.0.1/oneapi/intelpython/python3.9/lib/python3.9/site-packages (from matplotlib) (1.22.3)
Requirement already satisfied: fonttools>=4.22.0 in /glob/development-tools/versions/oneapi/2023.0.1/oneapi/intelpython/python3.9/lib/python3.9/site-packages (from matplotlib) (4.38.0)
Requirement already satisfied: contourpy>=1.0.1 in /glob/development-tools/versions/oneapi/2023.0.1/oneapi/intelpython/python3.9/lib/python3.9/site-packages (from matplotlib) (1.0.7)
Requirement already satisfied: cycler>=0.10 in /glob/development-tools/versions/oneapi/2023.0.1/oneapi/intelpython/python3.9/lib/python3.9/site-packages (from matplotlib) (0.11.0)
Requirement already satisfied: six>=1.5 in /glob/development-tools/versions/oneapi/2023.0.1/oneapi/intelpython/python3.9/lib/python3.9/site-packages (from python-dateutil>=2.7->matplotlib) (1.16.0)
Note: you may need to restart the kernel to use updated packages.
In [22]:
pip install opencv-python
Defaulting to user installation because normal site-packages is not writeable
Requirement already satisfied: opencv-python in /home/u188267/.local/lib/python3.9/site-packages (4.7.0.72)
Requirement already satisfied: numpy>=1.19.3 in /glob/development-tools/versions/oneapi/2023.0.1/oneapi/intelpython/python3.9/lib/python3.9/site-packages (from opencv-python) (1.22.3)
Note: you may need to restart the kernel to use updated packages.
In [26]:
import cv2
from matplotlib import pyplot as plt
def disp():
    num = random.randint(1,10000)
    imgg = "Image_{}.jpg".format(num)
    print(imgg)
    train = "./"
    if os.path.exists(train+imgg):
        testImage = cv2.imread(train+imgg)
        plt.imshow(testImage)
        plt.title("{}".format(train_csv.loc[train_csv['filename'] == "{}".format(imgg), 'label'].item()))

    else:
        #print(train+img)
        print("File Path not found \nSkipping the file!!")
In [30]:
disp()
Image_6242.jpg
In [25]:
cd train2
/home/u188267/hackathon/train2
In [31]:
cd ..
/home/u188267/hackathon
In [33]:
from PIL import Image
img_data = []
img_label = []
length = len(train_fol)
temp=Image.open
for i in (range(len(train_fol)-1)):
    t = './train2/' + filename[i]    
    temp_img = Image.open(t)
    img_data.append(np.asarray(temp_img.resize((160,160))))
    img_label.append(situation[i])
In [34]:
inp_shape = (160, 160,3)
In [35]:
iii = img_data
iii = np.asarray(iii)
type(iii)
Out[35]:
numpy.ndarray
In [36]:
y_train = to_categorical(np.asarray(train_csv['label'].factorize()[0]))
print(y_train[0])
[1. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0.]
In [37]:
vgg_model = Sequential()

pretrained_model= tf.keras.applications.VGG16(include_top=False,
                   input_shape=(160,160,3),
                   pooling='avg',classes=15,
                   weights='imagenet')

for layer in pretrained_model.layers:
        layer.trainable=False

vgg_model.add(pretrained_model)
vgg_model.add(Flatten())
vgg_model.add(Dense(512, activation='relu'))
vgg_model.add(Dense(15, activation='softmax'))
2023-03-17 01:09:15.648952: I tensorflow/core/platform/cpu_feature_guard.cc:193] This TensorFlow binary is optimized with oneAPI Deep Neural Network Library (oneDNN) to use the following CPU instructions in performance-critical operations:  AVX2 AVX512F FMA
To enable them in other operations, rebuild TensorFlow with the appropriate compiler flags.
2023-03-17 01:09:15.649728: I tensorflow/core/common_runtime/process_util.cc:146] Creating new thread pool with default inter op setting: 
In [38]:
vgg_model.compile(optimizer='adam', loss='categorical_crossentropy',metrics=['accuracy'])
In [39]:
vgg_model.summary()
Model: "sequential"
_________________________________________________________________
 Layer (type)                Output Shape              Param #   
=================================================================
 vgg16 (Functional)          (None, 512)               14714688  
                                                                 
 flatten (Flatten)           (None, 512)               0         
                                                                 
 dense (Dense)               (None, 512)               262656    
                                                                 
 dense_1 (Dense)             (None, 15)                7695      
                                                                 
=================================================================
Total params: 14,985,039
Trainable params: 270,351
Non-trainable params: 14,714,688
_________________________________________________________________
In [40]:
history = vgg_model.fit(iii,y_train, epochs=12)
Epoch 1/12
394/394 [==============================] - 253s 639ms/step - loss: 2.1592 - accuracy: 0.4480
Epoch 2/12
394/394 [==============================] - 252s 640ms/step - loss: 1.2191 - accuracy: 0.6013
Epoch 3/12
394/394 [==============================] - 250s 634ms/step - loss: 0.9410 - accuracy: 0.6902
Epoch 4/12
394/394 [==============================] - 251s 636ms/step - loss: 0.7407 - accuracy: 0.7562
Epoch 5/12
394/394 [==============================] - 249s 631ms/step - loss: 0.5621 - accuracy: 0.8150
Epoch 6/12
394/394 [==============================] - 252s 638ms/step - loss: 0.4096 - accuracy: 0.8648
Epoch 7/12
394/394 [==============================] - 250s 635ms/step - loss: 0.3004 - accuracy: 0.9030
Epoch 8/12
394/394 [==============================] - 250s 634ms/step - loss: 0.2127 - accuracy: 0.9306
Epoch 9/12
394/394 [==============================] - 250s 634ms/step - loss: 0.1808 - accuracy: 0.9413
Epoch 10/12
394/394 [==============================] - 251s 638ms/step - loss: 0.1848 - accuracy: 0.9374
Epoch 11/12
394/394 [==============================] - 251s 636ms/step - loss: 0.1443 - accuracy: 0.9527
Epoch 12/12
394/394 [==============================] - 250s 634ms/step - loss: 0.1082 - accuracy: 0.9656
In [41]:
vgg_model.save_weights("model.h5")
In [42]:
losss = history.history['loss']
plt.plot(losss)
Out[42]:
[<matplotlib.lines.Line2D at 0x7f72ef3d71c0>]
In [43]:
accu = history.history['accuracy']
plt.plot(accu)
Out[43]:
[<matplotlib.lines.Line2D at 0x7f72ef33fca0>]
In [44]:
def read_image(fn):
    image = Image.open(fn)
    return np.asarray(image.resize((160,160)))
In [64]:
thisdict = {
  0: "Drinking",
  11: "Fighting",
  4: "Using Mobile",
  13:"Walking",
   1:"Using Laptop",
    6:"Dancing",
    14:"Texting"
}
In [65]:
def test_predict(test_image):
    result = vgg_model.predict(np.asarray([read_image(test_image)]))
    itemindex = np.where(result==np.max(result))
    prediction = itemindex[1][0]
    print("probability: "+str(np.max(result)*100) + "%\nPredicted class : ", prediction)
    if(prediction in [0,11,4,13,1,6,14]):
        action=thisdict[prediction]
    
    else:
        action=""
    
    print("Action: ",action)
    image = img.imread(test_image)
    plt.imshow(image)
    plt.title(prediction)
In [47]:
cd ..
/home/u188267
In [48]:
cd hackathon
/home/u188267/hackathon
In [51]:
cd ..
/home/u188267/hackathon
In [50]:
test_predict('./Image_108.jpg')
1/1 [==============================] - 0s 426ms/step
probability: 99.96391534805298%
Predicted class :  6
Action:  Dancing
In [54]:
test_predict('./w1.jpg')
1/1 [==============================] - 0s 50ms/step
probability: 99.99998807907104%
Predicted class :  13
Action:  Walking
In [56]:
test_predict('./l.jpg')
1/1 [==============================] - 0s 48ms/step
probability: 99.90909099578857%
Predicted class :  1
Action:  Using Laptop
In [58]:
test_predict('./Two_dancers.jpg')
1/1 [==============================] - 0s 58ms/step
probability: 99.98248219490051%
Predicted class :  6
Action:  Dancing
In [59]:
test_predict('./1.jpg')
1/1 [==============================] - 0s 55ms/step
probability: 49.47127103805542%
Predicted class :  0
Action:  Drinking
In [62]:
test_predict('./2.jpg')
1/1 [==============================] - 0s 51ms/step
probability: 38.698768615722656%
Predicted class :  1
Action:  Using Laptop
In [66]:
test_predict('./3.jpg')
1/1 [==============================] - 0s 52ms/step
probability: 77.91008353233337%
Predicted class :  14
Action:  Texting
In [68]:
test_predict('./tt.jpg')
1/1 [==============================] - 0s 59ms/step
probability: 62.337279319763184%
Predicted class :  4
Action:  Using Mobile
In [69]:
from sklearn.linear_model import LogisticRegression
import pickle
DT_pkl_filename = './model.pkl'
DT_Model_pkl = open(DT_pkl_filename, 'wb')
pickle.dump(LogisticRegression, DT_Model_pkl)
Intel(R) Extension for Scikit-learn* enabled (https://github.com/intel/scikit-learn-intelex)
In [ ]: